﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BR_CruzDelSur;
using BR_CruzDelSur.Interfaces;
using System.Web.Services;
using BE_CruzDelSur;
using System.Web.UI.HtmlControls;

namespace WebCruzDelSur
{
    public partial class ImprimirGuiaRemision : System.Web.UI.Page
    {
        IBR_Pago pago = new BR_Pago();
        IBR_Carga carga = new BR_Carga();
        IBR_GuiaRemision guiaRemision = new BR_GuiaRemision();
        IBR_Producto producto = new BR_Producto();
        IBR_Util util = new BR_Util();
        IBR_ProgramacionRuta programacionRuta = new BR_ProgramacionRuta();

        public static List<BE_Producto> lstProd = new List<BE_Producto>();

        [WebMethod]
        public static List<BE_Producto> ObtenerProductos()
        {
            return lstProd;
        }

        [WebMethod]
        public static void AgregarProducto(int codigo, string nombre, string descripcion)
        {
            lstProd.Add(new BE_Producto() { Codigo = codigo, Nombre = nombre, Descripcion = descripcion });
        }


        protected void Page_Load(object sender, EventArgs e)
        {
            String strJavascriptFunctions = "";

            if (HttpContext.Current.Session["Usuario"] == null)
            {
                String message = "Debe autenticarse en el sistema. ";
                strJavascriptFunctions = "ShowMessageError('" + message + "');";
                ClientScript.RegisterStartupScript(this.GetType(), "Alerta", strJavascriptFunctions, true);
                return;
            }

            if (!Page.IsPostBack)
            {
                string codigocarga = Request.QueryString["CodigoGuia"].ToString();
                BE_GuiaRemision entidad = guiaRemision.f_obtenerDatosGuia(codigocarga);
                txtCodigoGuiaRemision.Value = codigocarga;
                
                if (entidad != null)
                {
                    lblGuiaRemision.Text = "GUIA DE REMISION " + entidad.secuenciaGuia;
                    List<BE_ProgramacionRuta> lst = programacionRuta.f_BuscaProgramacionParaGuia(entidad.CodigoProgramacionRuta);
                    txtCodigoProgramacionRuta.Value = entidad.CodigoProgramacionRuta.ToString();

                    if (lst.Count > 0)
                    {
                        lblFechaTraslado.Text = entidad.FechaOrigen;
                        lblAgenciaOrigen.Text = lst[0].NombreAgencia;
                        lblAgenciaDestino.Text = lst[0].NombreAgenciaDestino;
                        lblDireccionAgenciaOrigen.Text = lst[0].DireccionAgencia;
                        lblDireccionAgenciaDestino.Text = lst[0].DireccionAgenciaDestino;
                        lblLicenciaConducir.Text = lst[0].LicenciaConducir;
                        lblPlacaBus.Text = lst[0].PlacaBus;
                    }
                }                
            }

            strJavascriptFunctions = "setTimeout(function(){window.print();}, 3000);";
            ClientScript.RegisterStartupScript(this.GetType(), "Alerta", strJavascriptFunctions, true);
        }
    }
}